/*
 ============================================================================
 Name        : file_read.c
 Author      : jinzhu
 Version     :
 Copyright   : Your copyright notice
 Description : FileRead in C, Ansi-style
 ============================================================================
 */
#include <fcntl.h>		// 提供open()函数
#include <sys/types.h>	// 提供mode_t类型
#include <sys/stat.h>	// 提供open()函数的符号
#include <unistd.h>		// 提供close()函数
#include <stdio.h>

#define LENGTH 2048

int main(void) {
	int f;	// 用于保存文件标示符
	int i, j = 0;
	char c[LENGTH];

	f = open("/usr/include/gnu-versions.h", O_RDONLY, LENGTH); // 以只读方式打开指定路径的文件
	if (-1 != f)
	{
		i = read(f, c, LENGTH);	// 读取了指定长度的一块文件
		if (i > 0)
		{
			for ( ; i > 0; i--)
			{
				putchar(c[j++]); // 按字符挨个输出
			}
		}
		else
		{
			perror("读取");
		}
	}
	else
	{
		perror("打开文件");
	}
	close(f);	// 关闭文件
	return 0;
}
